package class06;

public class Code02_Power {

	public static boolean is2Power(int n) {
		// 方式一：如果一个数字只有一个1，n-1会把它的那个1打散，反正不在原位置
		return (n & (n - 1)) == 0;


		// 方式一：拿到最后一个1，与原始数做比较
		// 拿到最后的一个1的操作，是 (-b) & b
//		return  ((~n + 1) & n) - n  == 0;

	}

	public static boolean is4Power(int n) {
		return (n & (n - 1)) == 0 && (n & 0x55555555) != 0; // 0101 0101 0101 0101 0101 0101 0101 0101
	}


	public static void main(String[] args) {
		System.out.println(is4Power(4));
	}
}



